<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Percepio Trace Recorder: include/trcRecorder.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">Percepio Trace Recorder<span id="projectnumber">&#160;v4.8.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('trcRecorder_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">trcRecorder.h File Reference</div></div>
</div><!--header-->
<div class="contents">

<p>The public API of the Percepio trace recorder.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;trcDefines.h&gt;</code><br />
<code>#include &lt;trcConfig.h&gt;</code><br />
<code>#include &lt;trcKernelPortConfig.h&gt;</code><br />
<code>#include &lt;trcTypes.h&gt;</code><br />
<code>#include &lt;trcSnapshotConfig.h&gt;</code><br />
<code>#include &lt;trcKernelPortSnapshotConfig.h&gt;</code><br />
<code>#include &lt;trcHardwarePort.h&gt;</code><br />
<code>#include &lt;trcKernelPort.h&gt;</code><br />
<code>#include &lt;trcStreamingConfig.h&gt;</code><br />
<code>#include &lt;trcKernelPortStreamingConfig.h&gt;</code><br />
<code>#include &lt;<a class="el" href="trcString_8h_source.html">trcString.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcStaticBuffer_8h_source.html">trcStaticBuffer.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcError_8h_source.html">trcError.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcEvent_8h_source.html">trcEvent.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcEventBuffer_8h_source.html">trcEventBuffer.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcMultiCoreEventBuffer_8h_source.html">trcMultiCoreEventBuffer.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcTimestamp_8h_source.html">trcTimestamp.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcEntryTable_8h_source.html">trcEntryTable.h</a>&gt;</code><br />
<code>#include &lt;trcStreamPort.h&gt;</code><br />
<code>#include &lt;<a class="el" href="trcISR_8h_source.html">trcISR.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcTask_8h_source.html">trcTask.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcObject_8h_source.html">trcObject.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcPrint_8h_source.html">trcPrint.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcHeap_8h_source.html">trcHeap.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcExtension_8h_source.html">trcExtension.h</a>&gt;</code><br />
<code>#include &lt;trcUtility.h&gt;</code><br />
<code>#include &lt;<a class="el" href="trcStackMonitor_8h_source.html">trcStackMonitor.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcInternalEventBuffer_8h_source.html">trcInternalEventBuffer.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcDiagnostics_8h_source.html">trcDiagnostics.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcAssert_8h_source.html">trcAssert.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcRunnable_8h_source.html">trcRunnable.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcDependency_8h_source.html">trcDependency.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcInterval_8h_source.html">trcInterval.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcStateMachine_8h_source.html">trcStateMachine.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="trcCounter_8h_source.html">trcCounter.h</a>&gt;</code><br />
<code>#include &lt;stdarg.h&gt;</code><br />
</div>
<p><a href="trcRecorder_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structobjectHandleStackType.html">objectHandleStackType</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Object handle stack struct.  <a href="structobjectHandleStackType.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structObjectPropertyTableType.html">ObjectPropertyTableType</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Object property table struct.  <a href="structObjectPropertyTableType.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsymbolTableType.html">symbolTableType</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Symbol table structure.  <a href="structsymbolTableType.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a5e9bd569fa0ab178b26838cd7b57dfb1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a5e9bd569fa0ab178b26838cd7b57dfb1">prvTraceStoreEvent_None</a>(...)</td></tr>
<tr class="memdesc:a5e9bd569fa0ab178b26838cd7b57dfb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event without parameters.  <br /></td></tr>
<tr class="separator:a5e9bd569fa0ab178b26838cd7b57dfb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfcb564325629b21bbba2b3d7b556447"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#adfcb564325629b21bbba2b3d7b556447">prvTraceStoreEvent_Handle</a>(...)</td></tr>
<tr class="memdesc:adfcb564325629b21bbba2b3d7b556447"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with a handle parameter.  <br /></td></tr>
<tr class="separator:adfcb564325629b21bbba2b3d7b556447"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98326a9d7035cd5c47d7d7000924068c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a98326a9d7035cd5c47d7d7000924068c">prvTraceStoreEvent_Param</a>(...)</td></tr>
<tr class="memdesc:a98326a9d7035cd5c47d7d7000924068c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with one parameter.  <br /></td></tr>
<tr class="separator:a98326a9d7035cd5c47d7d7000924068c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae02ada674bad088544a95402f84941fb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ae02ada674bad088544a95402f84941fb">prvTraceStoreEvent_HandleParam</a>(...)</td></tr>
<tr class="memdesc:ae02ada674bad088544a95402f84941fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with a handle and one parameter.  <br /></td></tr>
<tr class="separator:ae02ada674bad088544a95402f84941fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76a51ed0fb238ee9a815692bb304f070"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a76a51ed0fb238ee9a815692bb304f070">prvTraceStoreEvent_ParamParam</a>(...)</td></tr>
<tr class="memdesc:a76a51ed0fb238ee9a815692bb304f070"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with two parameters.  <br /></td></tr>
<tr class="separator:a76a51ed0fb238ee9a815692bb304f070"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3e368e08db70fd9dffe5ed504b261e8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ab3e368e08db70fd9dffe5ed504b261e8">prvTraceStoreEvent_HandleParamParam</a>(...)</td></tr>
<tr class="memdesc:ab3e368e08db70fd9dffe5ed504b261e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with a handle and two parameters.  <br /></td></tr>
<tr class="separator:ab3e368e08db70fd9dffe5ed504b261e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55febc128e585b2138b4d08ea5eb1dc1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a55febc128e585b2138b4d08ea5eb1dc1">prvTraceStoreEvent_ParamParamParam</a>(...)</td></tr>
<tr class="memdesc:a55febc128e585b2138b4d08ea5eb1dc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with three parameters.  <br /></td></tr>
<tr class="separator:a55febc128e585b2138b4d08ea5eb1dc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0be07ccb07bfdc964b8afb2a3942666e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a0be07ccb07bfdc964b8afb2a3942666e">TRACE_GET_LOW16</a>(value)&#160;&#160;&#160;((uint16_t)((value) &amp; 0x0000FFFF))</td></tr>
<tr class="memdesc:a0be07ccb07bfdc964b8afb2a3942666e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns lower 16 bits of a value.  <br /></td></tr>
<tr class="separator:a0be07ccb07bfdc964b8afb2a3942666e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65cfc74ff712c7408f868b91ec142a5b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a65cfc74ff712c7408f868b91ec142a5b">TRACE_GET_HIGH16</a>(value)&#160;&#160;&#160;((uint16_t)(((value) &gt;&gt; 16) &amp; 0x0000FFFF))</td></tr>
<tr class="memdesc:a65cfc74ff712c7408f868b91ec142a5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns upper 16 bits.  <br /></td></tr>
<tr class="separator:a65cfc74ff712c7408f868b91ec142a5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae52706e82ec178b04522ed536eaad2a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ae52706e82ec178b04522ed536eaad2a3">TRACE_SET_LOW16</a>(current,  value)&#160;&#160;&#160;(((current) &amp; 0xFFFF0000) | (value))</td></tr>
<tr class="memdesc:ae52706e82ec178b04522ed536eaad2a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets lower 16 bits.  <br /></td></tr>
<tr class="separator:ae52706e82ec178b04522ed536eaad2a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa24e857131d37a5602ce9c3bb125157"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aaa24e857131d37a5602ce9c3bb125157">TRACE_SET_HIGH16</a>(current,  value)&#160;&#160;&#160;(((current) &amp; 0x0000FFFF) | (((uint32_t)(value)) &lt;&lt; 16))</td></tr>
<tr class="memdesc:aaa24e857131d37a5602ce9c3bb125157"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets upper 16 bits.  <br /></td></tr>
<tr class="separator:aaa24e857131d37a5602ce9c3bb125157"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1991479e9a6d6653333f8bb854abbbab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a1991479e9a6d6653333f8bb854abbbab">xTraceIsRecorderEnabled</a>(void)&#160;&#160;&#160;(<a class="el" href="trcRecorder_8h.html#a0a44ba3c19b138067aecae815af61ca2">xTraceIsRecorderInitialized</a>() &amp;&amp; pxTraceRecorderData-&gt;uiRecorderEnabled)</td></tr>
<tr class="memdesc:a1991479e9a6d6653333f8bb854abbbab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query if recorder is enabled.  <br /></td></tr>
<tr class="separator:a1991479e9a6d6653333f8bb854abbbab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a44ba3c19b138067aecae815af61ca2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a0a44ba3c19b138067aecae815af61ca2">xTraceIsRecorderInitialized</a>()&#160;&#160;&#160;<a class="el" href="trcRecorder_8h.html#a8223714e679e845f43befeca699ef7f1">xTraceIsComponentInitialized</a>(TRC_RECORDER_COMPONENT_CORE)</td></tr>
<tr class="memdesc:a0a44ba3c19b138067aecae815af61ca2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query if recorder initialized.  <br /></td></tr>
<tr class="separator:a0a44ba3c19b138067aecae815af61ca2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70dff8a1b718676016da16aa0252cd3e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a70dff8a1b718676016da16aa0252cd3e">xTraceSetComponentInitialized</a>(uiComponentBit)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(RecorderInitialized |= (uiComponentBit), TRC_SUCCESS)</td></tr>
<tr class="memdesc:a70dff8a1b718676016da16aa0252cd3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag component as initialized.  <br /></td></tr>
<tr class="separator:a70dff8a1b718676016da16aa0252cd3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8223714e679e845f43befeca699ef7f1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a8223714e679e845f43befeca699ef7f1">xTraceIsComponentInitialized</a>(uiComponentBit)&#160;&#160;&#160;(RecorderInitialized &amp; (uiComponentBit))</td></tr>
<tr class="memdesc:a8223714e679e845f43befeca699ef7f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query if component is initialized.  <br /></td></tr>
<tr class="separator:a8223714e679e845f43befeca699ef7f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f268f164c766c85c14dc1de0bd92188"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a5f268f164c766c85c14dc1de0bd92188">xTraceStateSet</a>(uxState)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(pxTraceRecorderData-&gt;uxTraceSystemStates[TRC_CFG_GET_CURRENT_CORE()] = (uxState), TRC_SUCCESS)</td></tr>
<tr class="memdesc:a5f268f164c766c85c14dc1de0bd92188"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the trace state.  <br /></td></tr>
<tr class="separator:a5f268f164c766c85c14dc1de0bd92188"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2178d5e0ed9e33479c2b1466d9df695"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ad2178d5e0ed9e33479c2b1466d9df695">xTraceStateGet</a>(puxState)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(*(puxState) = pxTraceRecorderData-&gt;uxTraceSystemStates[TRC_CFG_GET_CURRENT_CORE()], TRC_SUCCESS)</td></tr>
<tr class="memdesc:ad2178d5e0ed9e33479c2b1466d9df695"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query the trace state.  <br /></td></tr>
<tr class="separator:ad2178d5e0ed9e33479c2b1466d9df695"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a867167e96e426283c516991993b68576"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a867167e96e426283c516991993b68576">prvTraceStoreEvent_None</a>(_eventID)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga63f12da033faf0f4de4ef2755d73b308">xTraceEventCreate0</a>(_eventID)</td></tr>
<tr class="memdesc:a867167e96e426283c516991993b68576"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event without parameters.  <br /></td></tr>
<tr class="separator:a867167e96e426283c516991993b68576"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae88b1ce82e861acad47238bf90814e86"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ae88b1ce82e861acad47238bf90814e86">prvTraceStoreEvent_Handle</a>(_eventID,  _handle)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga676dd9f79556a3343072b14fac51af1d">xTraceEventCreate1</a>(_eventID, (TraceUnsignedBaseType_t)(_handle))</td></tr>
<tr class="memdesc:ae88b1ce82e861acad47238bf90814e86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with a handle parameter.  <br /></td></tr>
<tr class="separator:ae88b1ce82e861acad47238bf90814e86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7867369cb525f9e9fb50ca5a72e4affb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a7867369cb525f9e9fb50ca5a72e4affb">prvTraceStoreEvent_Param</a>(_eventID,  _param1)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga676dd9f79556a3343072b14fac51af1d">xTraceEventCreate1</a>(_eventID, (TraceUnsignedBaseType_t)(_param1))</td></tr>
<tr class="memdesc:a7867369cb525f9e9fb50ca5a72e4affb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with one parameter.  <br /></td></tr>
<tr class="separator:a7867369cb525f9e9fb50ca5a72e4affb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea1ade2ee9b2de07ac09c1fff17beae3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aea1ade2ee9b2de07ac09c1fff17beae3">prvTraceStoreEvent_HandleParam</a>(_eventID,  _handle,  _param1)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga5fcbd638f23ebbe7d9a4447d0338beca">xTraceEventCreate2</a>(_eventID, (TraceUnsignedBaseType_t)(_handle), (TraceUnsignedBaseType_t)(_param1))</td></tr>
<tr class="memdesc:aea1ade2ee9b2de07ac09c1fff17beae3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with a handle and one parameter.  <br /></td></tr>
<tr class="separator:aea1ade2ee9b2de07ac09c1fff17beae3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a087a7d35dd2f05582fb0c49fcf0aa1a1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a087a7d35dd2f05582fb0c49fcf0aa1a1">prvTraceStoreEvent_ParamParam</a>(_eventID,  _param1,  _param2)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga5fcbd638f23ebbe7d9a4447d0338beca">xTraceEventCreate2</a>(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2))</td></tr>
<tr class="memdesc:a087a7d35dd2f05582fb0c49fcf0aa1a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with two parameters.  <br /></td></tr>
<tr class="separator:a087a7d35dd2f05582fb0c49fcf0aa1a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a19270c60dd0cbdc4cda666cccc08ec"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a9a19270c60dd0cbdc4cda666cccc08ec">prvTraceStoreEvent_HandleParamParam</a>(_eventID,  _handle,  _param1,  _param2)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#gad64822d442e36ad8b008462994442e11">xTraceEventCreate3</a>(_eventID, (TraceUnsignedBaseType_t)(_handle), (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2))</td></tr>
<tr class="memdesc:a9a19270c60dd0cbdc4cda666cccc08ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with a handle and two parameters.  <br /></td></tr>
<tr class="separator:a9a19270c60dd0cbdc4cda666cccc08ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85a657faacc8d4656492ce756f398b6e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a85a657faacc8d4656492ce756f398b6e">prvTraceStoreEvent_ParamParamParam</a>(_eventID,  _param1,  _param2,  _param3)&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#gad64822d442e36ad8b008462994442e11">xTraceEventCreate3</a>(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2), (TraceUnsignedBaseType_t)(_param3))</td></tr>
<tr class="memdesc:a85a657faacc8d4656492ce756f398b6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores an event with three parameters.  <br /></td></tr>
<tr class="separator:a85a657faacc8d4656492ce756f398b6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a595c6523320f46204bdac038591f9bdb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a595c6523320f46204bdac038591f9bdb">vTraceSetStopHook</a>(x)&#160;&#160;&#160;(void)(x)</td></tr>
<tr class="memdesc:a595c6523320f46204bdac038591f9bdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Snapshot mode only. Trace stop hook.  <br /></td></tr>
<tr class="separator:a595c6523320f46204bdac038591f9bdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba11ae447ecd0b85b8a98fca71c8e124"><td class="memItemLeft" align="right" valign="top"><a id="aba11ae447ecd0b85b8a98fca71c8e124" name="aba11ae447ecd0b85b8a98fca71c8e124"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>vTraceInitTimestamps</b>()</td></tr>
<tr class="memdesc:aba11ae447ecd0b85b8a98fca71c8e124"><td class="mdescLeft">&#160;</td><td class="mdescRight">Snapshot mode only. Initialize timestamps. <br /></td></tr>
<tr class="separator:aba11ae447ecd0b85b8a98fca71c8e124"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4433d7c94ad4000866306078790197fe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a4433d7c94ad4000866306078790197fe">vTraceInitialize</a>&#160;&#160;&#160;(void)<a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d">xTraceInitialize</a></td></tr>
<tr class="separator:a4433d7c94ad4000866306078790197fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad81a6a12b34c4761097d25c6c9036887"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ad81a6a12b34c4761097d25c6c9036887">vTraceEnable</a>&#160;&#160;&#160;(void)xTraceEnable</td></tr>
<tr class="separator:ad81a6a12b34c4761097d25c6c9036887"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54344b66a74433f50feee5cfdb726f91"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a54344b66a74433f50feee5cfdb726f91">vTraceStop</a>&#160;&#160;&#160;(void)<a class="el" href="trcRecorder_8h.html#a62af22d9ff86d507040b538cf0c86c53">xTraceDisable</a></td></tr>
<tr class="separator:a54344b66a74433f50feee5cfdb726f91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4441d3b4dd03eb69d335307d3650dae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ac4441d3b4dd03eb69d335307d3650dae">vTraceInstanceFinishedNow</a>&#160;&#160;&#160;(void)<a class="el" href="group__trace__task__apis.html#ga3db6f1905d1011b561e11b1ff642dd59">xTraceTaskInstanceFinishedNow</a></td></tr>
<tr class="separator:ac4441d3b4dd03eb69d335307d3650dae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a017e80004dee99fbe357c86c77940819"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a017e80004dee99fbe357c86c77940819">vTraceInstanceFinishedNext</a>&#160;&#160;&#160;(void)<a class="el" href="group__trace__task__apis.html#ga4e1fbd5cc3c8db1f98748094f970b85e">xTraceTaskInstanceFinishedNext</a></td></tr>
<tr class="separator:a017e80004dee99fbe357c86c77940819"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56704be14a68b7e59a378fac22ff42c7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a56704be14a68b7e59a378fac22ff42c7">vTracePrintF</a>&#160;&#160;&#160;(void)<a class="el" href="group__trace__print__apis.html#gaf7a1c759021aaf820223232de9173c9c">xTracePrintF</a></td></tr>
<tr class="separator:a56704be14a68b7e59a378fac22ff42c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a548dc97141d6e4d3049da174c5b23e16"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a548dc97141d6e4d3049da174c5b23e16">vTraceVPrintF</a>&#160;&#160;&#160;(void)<a class="el" href="group__trace__print__apis.html#ga5f5225b2f149a1fa4858bc6364fdbacc">xTraceVPrintF</a></td></tr>
<tr class="separator:a548dc97141d6e4d3049da174c5b23e16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00d742ca47f84add37a93a8a0f3fb6c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a00d742ca47f84add37a93a8a0f3fb6c5">vTracePrint</a>&#160;&#160;&#160;(void)<a class="el" href="group__trace__print__apis.html#gab883a6ad75c359454757ddb0503f5d3b">xTracePrint</a></td></tr>
<tr class="separator:a00d742ca47f84add37a93a8a0f3fb6c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab484288bbf50e8844cd63530c06808ab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ab484288bbf50e8844cd63530c06808ab">vTraceSetRecorderDataBuffer</a>(pxBuffer)&#160;&#160;&#160;<a class="el" href="trcRecorder_8h.html#adf9a9f603f0c43cb8793bfc4861fc2c3">xTraceSetBuffer</a>((TraceRecorderData_t*)(pxBuffer))</td></tr>
<tr class="separator:ab484288bbf50e8844cd63530c06808ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a80ef75431674bd23f75b4658f5ebce16"><td class="memItemLeft" align="right" valign="top"><a id="a80ef75431674bd23f75b4658f5ebce16" name="a80ef75431674bd23f75b4658f5ebce16"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><b>TRACE_STOP_HOOK</b>) (void)</td></tr>
<tr class="memdesc:a80ef75431674bd23f75b4658f5ebce16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Trace stop callback type. <br /></td></tr>
<tr class="separator:a80ef75431674bd23f75b4658f5ebce16"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a55cefe256f7bfcfa9085667696a1752d"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d">xTraceInitialize</a> (void)</td></tr>
<tr class="memdesc:a55cefe256f7bfcfa9085667696a1752d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the recorder data. <a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d" title="Initializes the recorder data. xTraceInitialize() or xTraceEnable(...) must be called before any atte...">xTraceInitialize()</a> or xTraceEnable(...) must be called before any attempts at adding trace data/information. <a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d" title="Initializes the recorder data. xTraceInitialize() or xTraceEnable(...) must be called before any atte...">xTraceInitialize()</a> can be called before timestamp source is initialized since timestamps aren't used until xTraceEnable(...) is called.  <br /></td></tr>
<tr class="separator:a55cefe256f7bfcfa9085667696a1752d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62af22d9ff86d507040b538cf0c86c53"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a62af22d9ff86d507040b538cf0c86c53">xTraceDisable</a> (void)</td></tr>
<tr class="memdesc:a62af22d9ff86d507040b538cf0c86c53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables tracing.  <br /></td></tr>
<tr class="separator:a62af22d9ff86d507040b538cf0c86c53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff475da7b20b3621add3623b5e293575"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aff475da7b20b3621add3623b5e293575">vTraceSetFilterGroup</a> (uint16_t filterGroup)</td></tr>
<tr class="memdesc:aff475da7b20b3621add3623b5e293575"><td class="mdescLeft">&#160;</td><td class="mdescRight">For snapshot mode only: Sets the "filter group" to assign when creating RTOS objects, such as tasks, queues, semaphores and mutexes. This together with vTraceSetFilterMask allows you to control what events that are recorded, based on the objects they refer to.  <br /></td></tr>
<tr class="separator:aff475da7b20b3621add3623b5e293575"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cb58f094eb23d0a9ef7984b498e7d9f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a5cb58f094eb23d0a9ef7984b498e7d9f">vTraceSetFilterMask</a> (uint16_t filterMask)</td></tr>
<tr class="memdesc:a5cb58f094eb23d0a9ef7984b498e7d9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">For snapshot mode only: Sets the "filter mask" that is used to filter the events by object. This can be used to reduce the trace data rate, i.e., if your streaming interface is a bottleneck or if you want longer snapshot traces without increasing the buffer size.  <br /></td></tr>
<tr class="separator:a5cb58f094eb23d0a9ef7984b498e7d9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af17eedfd433bb638557a4ac0c5d77499"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#af17eedfd433bb638557a4ac0c5d77499">prvAddTaskToStackMonitor</a> (void *task)</td></tr>
<tr class="memdesc:af17eedfd433bb638557a4ac0c5d77499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a task to the stack monitor.  <br /></td></tr>
<tr class="separator:af17eedfd433bb638557a4ac0c5d77499"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a689f9cad63fd3aebb3264b9b04793a3c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a689f9cad63fd3aebb3264b9b04793a3c">prvRemoveTaskFromStackMonitor</a> (void *task)</td></tr>
<tr class="memdesc:a689f9cad63fd3aebb3264b9b04793a3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a task from the stack monitor.  <br /></td></tr>
<tr class="separator:a689f9cad63fd3aebb3264b9b04793a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a544078dcebe479dc4a4033dabcaeda44"><td class="memItemLeft" align="right" valign="top"><a id="a544078dcebe479dc4a4033dabcaeda44" name="a544078dcebe479dc4a4033dabcaeda44"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>prvReportStackUsage</b> (void)</td></tr>
<tr class="memdesc:a544078dcebe479dc4a4033dabcaeda44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reports on the current stack usage. <br /></td></tr>
<tr class="separator:a544078dcebe479dc4a4033dabcaeda44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0ef382e6e5964c8db9b807434b931921"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__isr__apis.html#ga0ef382e6e5964c8db9b807434b931921">xTraceISRRegister</a> (const char *szName, uint32_t uiPriority, TraceISRHandle_t *pxISRHandle)</td></tr>
<tr class="memdesc:ga0ef382e6e5964c8db9b807434b931921"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers an ISR.  <br /></td></tr>
<tr class="separator:ga0ef382e6e5964c8db9b807434b931921"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga28db1b1d4243e36cb68178af0387206a"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__isr__apis.html#ga28db1b1d4243e36cb68178af0387206a">xTraceISRBegin</a> (TraceISRHandle_t xHandle)</td></tr>
<tr class="memdesc:ga28db1b1d4243e36cb68178af0387206a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers the beginning of an Interrupt Service Routine, using a TraceISRHandle_t provided by xTraceISRRegister.  <br /></td></tr>
<tr class="separator:ga28db1b1d4243e36cb68178af0387206a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15ba5c0835d0f746e7a721b8acedab70"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a15ba5c0835d0f746e7a721b8acedab70">xTraceISREnd</a> (int pendingISR)</td></tr>
<tr class="memdesc:a15ba5c0835d0f746e7a721b8acedab70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers the end of an Interrupt Service Routine.  <br /></td></tr>
<tr class="separator:a15ba5c0835d0f746e7a721b8acedab70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21379c3d2f31b2370bc19c5c2ddce32f"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a21379c3d2f31b2370bc19c5c2ddce32f">xTraceTaskInstanceFinishedNow</a> (void)</td></tr>
<tr class="memdesc:a21379c3d2f31b2370bc19c5c2ddce32f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an event that ends the current task instance at this very instant. This makes the viewer to splits the current fragment at this point and begin a new actor instance, even if no task-switch has occurred.  <br /></td></tr>
<tr class="separator:a21379c3d2f31b2370bc19c5c2ddce32f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16c82bbd9f4fe8df1cd5c544f988e827"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a16c82bbd9f4fe8df1cd5c544f988e827">xTraceTaskInstanceFinishedNext</a> (void)</td></tr>
<tr class="memdesc:a16c82bbd9f4fe8df1cd5c544f988e827"><td class="mdescLeft">&#160;</td><td class="mdescRight">Marks the current "task instance" as finished on the next kernel call.  <br /></td></tr>
<tr class="separator:a16c82bbd9f4fe8df1cd5c544f988e827"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa9ee50f419cb5dda37c17dfa0144c3a"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aaa9ee50f419cb5dda37c17dfa0144c3a">xTraceStringRegister</a> (const char *label, TraceStringHandle_t *pxString)</td></tr>
<tr class="memdesc:aaa9ee50f419cb5dda37c17dfa0144c3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a string and returns a handle that can be used when tracing.  <br /></td></tr>
<tr class="separator:aaa9ee50f419cb5dda37c17dfa0144c3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd44a44fe62cd56a66a998e87dae821b"><td class="memItemLeft" align="right" valign="top">TraceStringHandle_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#afd44a44fe62cd56a66a998e87dae821b">xTraceRegisterString</a> (const char *name)</td></tr>
<tr class="memdesc:afd44a44fe62cd56a66a998e87dae821b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a string and returns a handle that can be used when tracing.  <br /></td></tr>
<tr class="separator:afd44a44fe62cd56a66a998e87dae821b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7a1c759021aaf820223232de9173c9c"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__print__apis.html#gaf7a1c759021aaf820223232de9173c9c">xTracePrintF</a> (TraceStringHandle_t chn, const char *fmt,...)</td></tr>
<tr class="memdesc:gaf7a1c759021aaf820223232de9173c9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates "User Events", with formatted text and data, similar to a "printf". User Events can be used for very efficient logging from your application code. It is very fast since the actual string formatting is done on the host side, when the trace is displayed. The execution time is just some microseconds on a 32-bit MCU.  <br /></td></tr>
<tr class="separator:gaf7a1c759021aaf820223232de9173c9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f5225b2f149a1fa4858bc6364fdbacc"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__print__apis.html#ga5f5225b2f149a1fa4858bc6364fdbacc">xTraceVPrintF</a> (TraceStringHandle_t eventLabel, const char *formatStr, va_list vl)</td></tr>
<tr class="memdesc:ga5f5225b2f149a1fa4858bc6364fdbacc"><td class="mdescLeft">&#160;</td><td class="mdescRight">xTracePrintF variant that accepts a va_list. See xTracePrintF documentation for further details.  <br /></td></tr>
<tr class="separator:ga5f5225b2f149a1fa4858bc6364fdbacc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab883a6ad75c359454757ddb0503f5d3b"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__print__apis.html#gab883a6ad75c359454757ddb0503f5d3b">xTracePrint</a> (TraceStringHandle_t chn, const char *str)</td></tr>
<tr class="memdesc:gab883a6ad75c359454757ddb0503f5d3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">A faster version of xTracePrintF, that only allows for logging a string.  <br /></td></tr>
<tr class="separator:gab883a6ad75c359454757ddb0503f5d3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac054fcab08015c8054fb23c5cdb584f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ac054fcab08015c8054fb23c5cdb584f0">vTraceSetStopHook</a> (<a class="el" href="trcRecorder_8h.html#a80ef75431674bd23f75b4658f5ebce16">TRACE_STOP_HOOK</a> stopHookFunction)</td></tr>
<tr class="memdesc:ac054fcab08015c8054fb23c5cdb584f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a function to be called when the recorder is stopped.  <br /></td></tr>
<tr class="separator:ac054fcab08015c8054fb23c5cdb584f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a438c3685b1e39f8c507982077e135fe0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a438c3685b1e39f8c507982077e135fe0">vTraceClear</a> (void)</td></tr>
<tr class="memdesc:a438c3685b1e39f8c507982077e135fe0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets the recorder.  <br /></td></tr>
<tr class="separator:a438c3685b1e39f8c507982077e135fe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0e6e943899c820592887e23ec907f49"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ac0e6e943899c820592887e23ec907f49">prvTraceSetReadyEventsEnabled</a> (uint32_t flag)</td></tr>
<tr class="memdesc:ac0e6e943899c820592887e23ec907f49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dynamically enables ready events.  <br /></td></tr>
<tr class="separator:ac0e6e943899c820592887e23ec907f49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe8587ed483787a0c372b8bb17076f61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#abe8587ed483787a0c372b8bb17076f61">prvTraceStoreTaskReady</a> (traceHandle handle)</td></tr>
<tr class="memdesc:abe8587ed483787a0c372b8bb17076f61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a Task Ready event.  <br /></td></tr>
<tr class="separator:abe8587ed483787a0c372b8bb17076f61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca15d85007f5a7172dba6ed8b61a6bda"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aca15d85007f5a7172dba6ed8b61a6bda">prvTraceStoreLowPower</a> (uint32_t flag)</td></tr>
<tr class="memdesc:aca15d85007f5a7172dba6ed8b61a6bda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a Low Power mode event.  <br /></td></tr>
<tr class="separator:aca15d85007f5a7172dba6ed8b61a6bda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa21cb18b5c3f0c46d33e43ef1425427b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aa21cb18b5c3f0c46d33e43ef1425427b">prvTraceStoreTaskswitch</a> (traceHandle task_handle)</td></tr>
<tr class="memdesc:aa21cb18b5c3f0c46d33e43ef1425427b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a Task Switch event.  <br /></td></tr>
<tr class="separator:aa21cb18b5c3f0c46d33e43ef1425427b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa73a8410deee18065299362b64620d79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aa73a8410deee18065299362b64620d79">prvTraceStoreKernelCall</a> (uint32_t eventcode, traceObjectClass objectClass, uint32_t objectNumber)</td></tr>
<tr class="memdesc:aa73a8410deee18065299362b64620d79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a Kernel Service call event with an Object handle parameter.  <br /></td></tr>
<tr class="separator:aa73a8410deee18065299362b64620d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae63a278e4436542930f5a33898387209"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ae63a278e4436542930f5a33898387209">prvTraceStoreKernelCallWithNumericParamOnly</a> (uint32_t evtcode, uint32_t param)</td></tr>
<tr class="memdesc:ae63a278e4436542930f5a33898387209"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a Kernel Service call event with only a numeric parameter.  <br /></td></tr>
<tr class="separator:ae63a278e4436542930f5a33898387209"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc81d827c015a145b13333933a31f7d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#afc81d827c015a145b13333933a31f7d6">prvTraceStoreKernelCallWithParam</a> (uint32_t evtcode, traceObjectClass objectClass, uint32_t objectNumber, uint32_t param)</td></tr>
<tr class="memdesc:afc81d827c015a145b13333933a31f7d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores a Kernel Service call event with an Object handle and a numeric parameter.  <br /></td></tr>
<tr class="separator:afc81d827c015a145b13333933a31f7d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a99f73c4b615dd1b9f1176457969510"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a0a99f73c4b615dd1b9f1176457969510">prvTraceSetTaskInstanceFinished</a> (traceHandle handle)</td></tr>
<tr class="memdesc:a0a99f73c4b615dd1b9f1176457969510"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flags a task instance as finished.  <br /></td></tr>
<tr class="separator:a0a99f73c4b615dd1b9f1176457969510"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81554165bf93ae937cd351d805af2d23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a81554165bf93ae937cd351d805af2d23">prvTraceSetPriorityProperty</a> (uint8_t objectclass, traceHandle id, uint8_t value)</td></tr>
<tr class="memdesc:a81554165bf93ae937cd351d805af2d23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set priority.  <br /></td></tr>
<tr class="separator:a81554165bf93ae937cd351d805af2d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af01cd6e240a45aa251b1e344bb8bde1b"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#af01cd6e240a45aa251b1e344bb8bde1b">prvTraceGetPriorityProperty</a> (uint8_t objectclass, traceHandle id)</td></tr>
<tr class="memdesc:af01cd6e240a45aa251b1e344bb8bde1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get priority.  <br /></td></tr>
<tr class="separator:af01cd6e240a45aa251b1e344bb8bde1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9aaff74096a29ec70283d99001afc11b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a9aaff74096a29ec70283d99001afc11b">prvTraceSetObjectState</a> (uint8_t objectclass, traceHandle id, uint8_t value)</td></tr>
<tr class="memdesc:a9aaff74096a29ec70283d99001afc11b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set object state.  <br /></td></tr>
<tr class="separator:a9aaff74096a29ec70283d99001afc11b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8ed2db2fbdca3b033e308cfbdcf6a4c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ae8ed2db2fbdca3b033e308cfbdcf6a4c">prvMarkObjectAsUsed</a> (traceObjectClass objectclass, traceHandle handle)</td></tr>
<tr class="memdesc:ae8ed2db2fbdca3b033e308cfbdcf6a4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mark object as used.  <br /></td></tr>
<tr class="separator:ae8ed2db2fbdca3b033e308cfbdcf6a4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53b3131f5fb7c6c23629d2d472d80655"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a53b3131f5fb7c6c23629d2d472d80655">prvTraceStoreObjectNameOnCloseEvent</a> (uint8_t evtcode, traceHandle handle, traceObjectClass objectclass)</td></tr>
<tr class="memdesc:a53b3131f5fb7c6c23629d2d472d80655"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores the name of an object because it is being deleted.  <br /></td></tr>
<tr class="separator:a53b3131f5fb7c6c23629d2d472d80655"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4e0c3e0a12b29cb6eb57a4a807864f4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ab4e0c3e0a12b29cb6eb57a4a807864f4">prvTraceStoreObjectPropertiesOnCloseEvent</a> (uint8_t evtcode, traceHandle handle, traceObjectClass objectclass)</td></tr>
<tr class="memdesc:ab4e0c3e0a12b29cb6eb57a4a807864f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores the property of an object because it is being deleted.  <br /></td></tr>
<tr class="separator:ab4e0c3e0a12b29cb6eb57a4a807864f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a376825a7b6d85ac515de47b0dcdb0c40"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a376825a7b6d85ac515de47b0dcdb0c40">xTraceGetTraceBuffer</a> (void)</td></tr>
<tr class="memdesc:a376825a7b6d85ac515de47b0dcdb0c40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the recorder data structure. Use this together with uiTraceGetTraceBufferSize if you wish to implement an own store/upload solution, e.g., in case a debugger connection is not available for uploading the data.  <br /></td></tr>
<tr class="separator:a376825a7b6d85ac515de47b0dcdb0c40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09709a126202d06f02c9bb390dde9530"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a09709a126202d06f02c9bb390dde9530">uiTraceGetTraceBufferSize</a> (void)</td></tr>
<tr class="memdesc:a09709a126202d06f02c9bb390dde9530"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the size of the recorder data structure. For use together with xTraceGetTraceBuffer if you wish to implement an own store/upload solution, e.g., in case a debugger connection is not available for uploading the data.  <br /></td></tr>
<tr class="separator:a09709a126202d06f02c9bb390dde9530"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8880560ab4d9c96029e2e824269afad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#ab8880560ab4d9c96029e2e824269afad">prvTraceError</a> (const char *msg)</td></tr>
<tr class="memdesc:ab8880560ab4d9c96029e2e824269afad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signals a trace error.  <br /></td></tr>
<tr class="separator:ab8880560ab4d9c96029e2e824269afad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea1bcdac03786dae79fe2a2089088f8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aea1bcdac03786dae79fe2a2089088f8e">prvTracePortGetTimeStamp</a> (uint32_t *puiTimestamp)</td></tr>
<tr class="memdesc:aea1bcdac03786dae79fe2a2089088f8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current time based on the HWTC macros which provide a hardware isolation layer towards the hardware timer/counter.  <br /></td></tr>
<tr class="separator:aea1bcdac03786dae79fe2a2089088f8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34a75e8fda85479d917a3038ab437813"><td class="memItemLeft" align="right" valign="top">traceHandle&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a34a75e8fda85479d917a3038ab437813">prvTraceGetObjectHandle</a> (traceObjectClass objectclass)</td></tr>
<tr class="memdesc:a34a75e8fda85479d917a3038ab437813"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reserve an object handle.  <br /></td></tr>
<tr class="separator:a34a75e8fda85479d917a3038ab437813"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b03d1095ea88af99c6e3d0e785834aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a3b03d1095ea88af99c6e3d0e785834aa">prvTraceFreeObjectHandle</a> (traceObjectClass objectclass, traceHandle handle)</td></tr>
<tr class="memdesc:a3b03d1095ea88af99c6e3d0e785834aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free an object handle.  <br /></td></tr>
<tr class="separator:a3b03d1095ea88af99c6e3d0e785834aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa011a8bb0aabcdf311f4ca0e4f106e2a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aa011a8bb0aabcdf311f4ca0e4f106e2a">prvTraceSetObjectName</a> (traceObjectClass objectclass, traceHandle handle, const char *name)</td></tr>
<tr class="memdesc:aa011a8bb0aabcdf311f4ca0e4f106e2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the object name.  <br /></td></tr>
<tr class="separator:aa011a8bb0aabcdf311f4ca0e4f106e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5313aac36d433a500e2036f3fea541aa"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a5313aac36d433a500e2036f3fea541aa">xTraceHeaderInitialize</a> (TraceHeaderBuffer_t *pxBuffer)</td></tr>
<tr class="memdesc:a5313aac36d433a500e2036f3fea541aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the header data.  <br /></td></tr>
<tr class="separator:a5313aac36d433a500e2036f3fea541aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0dc702c30539813811556694b07c806c"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#a0dc702c30539813811556694b07c806c">xTraceTzCtrl</a> (void)</td></tr>
<tr class="memdesc:a0dc702c30539813811556694b07c806c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call this function periodically.  <br /></td></tr>
<tr class="separator:a0dc702c30539813811556694b07c806c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf9a9f603f0c43cb8793bfc4861fc2c3"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#adf9a9f603f0c43cb8793bfc4861fc2c3">xTraceSetBuffer</a> (TraceRecorderData_t *pxBuffer)</td></tr>
<tr class="memdesc:adf9a9f603f0c43cb8793bfc4861fc2c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the recorder data buffer.  <br /></td></tr>
<tr class="separator:adf9a9f603f0c43cb8793bfc4861fc2c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2d68495afa8821369279f8b12250b48"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trcRecorder_8h.html#aa2d68495afa8821369279f8b12250b48">xTraceGetEventBuffer</a> (void **ppvBuffer, TraceUnsignedBaseType_t *puiSize)</td></tr>
<tr class="memdesc:aa2d68495afa8821369279f8b12250b48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve the event buffer and event buffer size.  <br /></td></tr>
<tr class="separator:aa2d68495afa8821369279f8b12250b48"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The public API of the Percepio trace recorder. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="adfcb564325629b21bbba2b3d7b556447" name="adfcb564325629b21bbba2b3d7b556447"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfcb564325629b21bbba2b3d7b556447">&#9670;&#160;</a></span>prvTraceStoreEvent_Handle <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_Handle</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with a handle parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_handle</td><td>Handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae88b1ce82e861acad47238bf90814e86" name="ae88b1ce82e861acad47238bf90814e86"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae88b1ce82e861acad47238bf90814e86">&#9670;&#160;</a></span>prvTraceStoreEvent_Handle <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_Handle</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_handle&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga676dd9f79556a3343072b14fac51af1d">xTraceEventCreate1</a>(_eventID, (TraceUnsignedBaseType_t)(_handle))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with a handle parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_handle</td><td>Handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae02ada674bad088544a95402f84941fb" name="ae02ada674bad088544a95402f84941fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae02ada674bad088544a95402f84941fb">&#9670;&#160;</a></span>prvTraceStoreEvent_HandleParam <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_HandleParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with a handle and one parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_handle</td><td>Handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aea1ade2ee9b2de07ac09c1fff17beae3" name="aea1ade2ee9b2de07ac09c1fff17beae3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea1ade2ee9b2de07ac09c1fff17beae3">&#9670;&#160;</a></span>prvTraceStoreEvent_HandleParam <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_HandleParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_handle, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param1&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga5fcbd638f23ebbe7d9a4447d0338beca">xTraceEventCreate2</a>(_eventID, (TraceUnsignedBaseType_t)(_handle), (TraceUnsignedBaseType_t)(_param1))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with a handle and one parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_handle</td><td>Handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab3e368e08db70fd9dffe5ed504b261e8" name="ab3e368e08db70fd9dffe5ed504b261e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3e368e08db70fd9dffe5ed504b261e8">&#9670;&#160;</a></span>prvTraceStoreEvent_HandleParamParam <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_HandleParamParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with a handle and two parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_handle</td><td>Handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param2</td><td>Param 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9a19270c60dd0cbdc4cda666cccc08ec" name="a9a19270c60dd0cbdc4cda666cccc08ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a19270c60dd0cbdc4cda666cccc08ec">&#9670;&#160;</a></span>prvTraceStoreEvent_HandleParamParam <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_HandleParamParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_handle, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param2&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#gad64822d442e36ad8b008462994442e11">xTraceEventCreate3</a>(_eventID, (TraceUnsignedBaseType_t)(_handle), (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with a handle and two parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_handle</td><td>Handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param2</td><td>Param 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5e9bd569fa0ab178b26838cd7b57dfb1" name="a5e9bd569fa0ab178b26838cd7b57dfb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e9bd569fa0ab178b26838cd7b57dfb1">&#9670;&#160;</a></span>prvTraceStoreEvent_None <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_None</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event without parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a867167e96e426283c516991993b68576" name="a867167e96e426283c516991993b68576"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a867167e96e426283c516991993b68576">&#9670;&#160;</a></span>prvTraceStoreEvent_None <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_None</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga63f12da033faf0f4de4ef2755d73b308">xTraceEventCreate0</a>(_eventID)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event without parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a98326a9d7035cd5c47d7d7000924068c" name="a98326a9d7035cd5c47d7d7000924068c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98326a9d7035cd5c47d7d7000924068c">&#9670;&#160;</a></span>prvTraceStoreEvent_Param <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_Param</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with one parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a7867369cb525f9e9fb50ca5a72e4affb" name="a7867369cb525f9e9fb50ca5a72e4affb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7867369cb525f9e9fb50ca5a72e4affb">&#9670;&#160;</a></span>prvTraceStoreEvent_Param <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_Param</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param1&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga676dd9f79556a3343072b14fac51af1d">xTraceEventCreate1</a>(_eventID, (TraceUnsignedBaseType_t)(_param1))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with one parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a76a51ed0fb238ee9a815692bb304f070" name="a76a51ed0fb238ee9a815692bb304f070"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a76a51ed0fb238ee9a815692bb304f070">&#9670;&#160;</a></span>prvTraceStoreEvent_ParamParam <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_ParamParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with two parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param2</td><td>Param 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a087a7d35dd2f05582fb0c49fcf0aa1a1" name="a087a7d35dd2f05582fb0c49fcf0aa1a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a087a7d35dd2f05582fb0c49fcf0aa1a1">&#9670;&#160;</a></span>prvTraceStoreEvent_ParamParam <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_ParamParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param2&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga5fcbd638f23ebbe7d9a4447d0338beca">xTraceEventCreate2</a>(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with two parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param2</td><td>Param 2 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a55febc128e585b2138b4d08ea5eb1dc1" name="a55febc128e585b2138b4d08ea5eb1dc1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55febc128e585b2138b4d08ea5eb1dc1">&#9670;&#160;</a></span>prvTraceStoreEvent_ParamParamParam <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_ParamParamParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with three parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param2</td><td>Param 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param3</td><td>Param 3 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a85a657faacc8d4656492ce756f398b6e" name="a85a657faacc8d4656492ce756f398b6e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85a657faacc8d4656492ce756f398b6e">&#9670;&#160;</a></span>prvTraceStoreEvent_ParamParamParam <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define prvTraceStoreEvent_ParamParamParam</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_eventID, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param1, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param2, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">_param3&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#gad64822d442e36ad8b008462994442e11">xTraceEventCreate3</a>(_eventID, (TraceUnsignedBaseType_t)(_param1), (TraceUnsignedBaseType_t)(_param2), (TraceUnsignedBaseType_t)(_param3))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores an event with three parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">_eventID</td><td>Event id </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param1</td><td>Param 1 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param2</td><td>Param 2 </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">_param3</td><td>Param 3 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a65cfc74ff712c7408f868b91ec142a5b" name="a65cfc74ff712c7408f868b91ec142a5b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65cfc74ff712c7408f868b91ec142a5b">&#9670;&#160;</a></span>TRACE_GET_HIGH16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TRACE_GET_HIGH16</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">value</td><td>)</td>
          <td>&#160;&#160;&#160;((uint16_t)(((value) &gt;&gt; 16) &amp; 0x0000FFFF))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns upper 16 bits. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The starting value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0be07ccb07bfdc964b8afb2a3942666e" name="a0be07ccb07bfdc964b8afb2a3942666e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0be07ccb07bfdc964b8afb2a3942666e">&#9670;&#160;</a></span>TRACE_GET_LOW16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TRACE_GET_LOW16</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">value</td><td>)</td>
          <td>&#160;&#160;&#160;((uint16_t)((value) &amp; 0x0000FFFF))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns lower 16 bits of a value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The starting value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aaa24e857131d37a5602ce9c3bb125157" name="aaa24e857131d37a5602ce9c3bb125157"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa24e857131d37a5602ce9c3bb125157">&#9670;&#160;</a></span>TRACE_SET_HIGH16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TRACE_SET_HIGH16</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">current, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">value&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(((current) &amp; 0x0000FFFF) | (((uint32_t)(value)) &lt;&lt; 16))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets upper 16 bits. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">current</td><td>The starting value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The value to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae52706e82ec178b04522ed536eaad2a3" name="ae52706e82ec178b04522ed536eaad2a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae52706e82ec178b04522ed536eaad2a3">&#9670;&#160;</a></span>TRACE_SET_LOW16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TRACE_SET_LOW16</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">current, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">value&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;(((current) &amp; 0xFFFF0000) | (value))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets lower 16 bits. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">current</td><td>The starting value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The value to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ad81a6a12b34c4761097d25c6c9036887" name="ad81a6a12b34c4761097d25c6c9036887"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad81a6a12b34c4761097d25c6c9036887">&#9670;&#160;</a></span>vTraceEnable</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceEnable&#160;&#160;&#160;(void)xTraceEnable</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceEnable instead. </dd></dl>

</div>
</div>
<a id="a4433d7c94ad4000866306078790197fe" name="a4433d7c94ad4000866306078790197fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4433d7c94ad4000866306078790197fe">&#9670;&#160;</a></span>vTraceInitialize</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceInitialize&#160;&#160;&#160;(void)<a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d">xTraceInitialize</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceInitialize instead. </dd></dl>

</div>
</div>
<a id="a017e80004dee99fbe357c86c77940819" name="a017e80004dee99fbe357c86c77940819"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a017e80004dee99fbe357c86c77940819">&#9670;&#160;</a></span>vTraceInstanceFinishedNext</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceInstanceFinishedNext&#160;&#160;&#160;(void)<a class="el" href="group__trace__task__apis.html#ga4e1fbd5cc3c8db1f98748094f970b85e">xTraceTaskInstanceFinishedNext</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceTaskInstanceFinishedNext instead. </dd></dl>

</div>
</div>
<a id="ac4441d3b4dd03eb69d335307d3650dae" name="ac4441d3b4dd03eb69d335307d3650dae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4441d3b4dd03eb69d335307d3650dae">&#9670;&#160;</a></span>vTraceInstanceFinishedNow</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceInstanceFinishedNow&#160;&#160;&#160;(void)<a class="el" href="group__trace__task__apis.html#ga3db6f1905d1011b561e11b1ff642dd59">xTraceTaskInstanceFinishedNow</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000005">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceTaskInstanceFinishedNow instead. </dd></dl>

</div>
</div>
<a id="a00d742ca47f84add37a93a8a0f3fb6c5" name="a00d742ca47f84add37a93a8a0f3fb6c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00d742ca47f84add37a93a8a0f3fb6c5">&#9670;&#160;</a></span>vTracePrint</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTracePrint&#160;&#160;&#160;(void)<a class="el" href="group__trace__print__apis.html#gab883a6ad75c359454757ddb0503f5d3b">xTracePrint</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000009">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTracePrint instead. </dd></dl>

</div>
</div>
<a id="a56704be14a68b7e59a378fac22ff42c7" name="a56704be14a68b7e59a378fac22ff42c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56704be14a68b7e59a378fac22ff42c7">&#9670;&#160;</a></span>vTracePrintF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTracePrintF&#160;&#160;&#160;(void)<a class="el" href="group__trace__print__apis.html#gaf7a1c759021aaf820223232de9173c9c">xTracePrintF</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTracePrintF instead. </dd></dl>

</div>
</div>
<a id="ab484288bbf50e8844cd63530c06808ab" name="ab484288bbf50e8844cd63530c06808ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab484288bbf50e8844cd63530c06808ab">&#9670;&#160;</a></span>vTraceSetRecorderDataBuffer</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceSetRecorderDataBuffer</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">pxBuffer</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="trcRecorder_8h.html#adf9a9f603f0c43cb8793bfc4861fc2c3">xTraceSetBuffer</a>((TraceRecorderData_t*)(pxBuffer))</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000010">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceSetBuffer instead. </dd></dl>

</div>
</div>
<a id="a595c6523320f46204bdac038591f9bdb" name="a595c6523320f46204bdac038591f9bdb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a595c6523320f46204bdac038591f9bdb">&#9670;&#160;</a></span>vTraceSetStopHook</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceSetStopHook</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">x</td><td>)</td>
          <td>&#160;&#160;&#160;(void)(x)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Snapshot mode only. Trace stop hook. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a54344b66a74433f50feee5cfdb726f91" name="a54344b66a74433f50feee5cfdb726f91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a54344b66a74433f50feee5cfdb726f91">&#9670;&#160;</a></span>vTraceStop</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceStop&#160;&#160;&#160;(void)<a class="el" href="trcRecorder_8h.html#a62af22d9ff86d507040b538cf0c86c53">xTraceDisable</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000004">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceDisable instead. </dd></dl>

</div>
</div>
<a id="a548dc97141d6e4d3049da174c5b23e16" name="a548dc97141d6e4d3049da174c5b23e16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a548dc97141d6e4d3049da174c5b23e16">&#9670;&#160;</a></span>vTraceVPrintF</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define vTraceVPrintF&#160;&#160;&#160;(void)<a class="el" href="group__trace__print__apis.html#ga5f5225b2f149a1fa4858bc6364fdbacc">xTraceVPrintF</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000008">Deprecated:</a></b></dt><dd>Backwards compatibility. Use xTraceVPrintF instead. </dd></dl>

</div>
</div>
<a id="a8223714e679e845f43befeca699ef7f1" name="a8223714e679e845f43befeca699ef7f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8223714e679e845f43befeca699ef7f1">&#9670;&#160;</a></span>xTraceIsComponentInitialized</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define xTraceIsComponentInitialized</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">uiComponentBit</td><td>)</td>
          <td>&#160;&#160;&#160;(RecorderInitialized &amp; (uiComponentBit))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Query if component is initialized. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">uiComponentBit</td><td>Component bit</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">Non-zero</td><td>Component initialized </td></tr>
    <tr><td class="paramname">0</td><td>Component not initialized </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1991479e9a6d6653333f8bb854abbbab" name="a1991479e9a6d6653333f8bb854abbbab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1991479e9a6d6653333f8bb854abbbab">&#9670;&#160;</a></span>xTraceIsRecorderEnabled</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t xTraceIsRecorderEnabled</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">void</td><td>)</td>
          <td>&#160;&#160;&#160;(<a class="el" href="trcRecorder_8h.html#a0a44ba3c19b138067aecae815af61ca2">xTraceIsRecorderInitialized</a>() &amp;&amp; pxTraceRecorderData-&gt;uiRecorderEnabled)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Query if recorder is enabled. </p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">1</td><td>if recorder is enabled </td></tr>
    <tr><td class="paramname">0</td><td>if recorder is disabled</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">Non-zero</td><td>Recorder enabled </td></tr>
    <tr><td class="paramname">0</td><td>Recorder not enabled </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0a44ba3c19b138067aecae815af61ca2" name="a0a44ba3c19b138067aecae815af61ca2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a44ba3c19b138067aecae815af61ca2">&#9670;&#160;</a></span>xTraceIsRecorderInitialized</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t xTraceIsRecorderInitialized</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">void</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="trcRecorder_8h.html#a8223714e679e845f43befeca699ef7f1">xTraceIsComponentInitialized</a>(TRC_RECORDER_COMPONENT_CORE)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Query if recorder initialized. </p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">1</td><td>if recorder is initialized </td></tr>
    <tr><td class="paramname">0</td><td>if recorder isn't initialized</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">Non-zero</td><td>Recorder initialized </td></tr>
    <tr><td class="paramname">0</td><td>Recorder not initialized </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a70dff8a1b718676016da16aa0252cd3e" name="a70dff8a1b718676016da16aa0252cd3e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70dff8a1b718676016da16aa0252cd3e">&#9670;&#160;</a></span>xTraceSetComponentInitialized</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define xTraceSetComponentInitialized</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">uiComponentBit</td><td>)</td>
          <td>&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(RecorderInitialized |= (uiComponentBit), TRC_SUCCESS)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Flag component as initialized. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">uiComponentBit</td><td>Component bit</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ad2178d5e0ed9e33479c2b1466d9df695" name="ad2178d5e0ed9e33479c2b1466d9df695"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2178d5e0ed9e33479c2b1466d9df695">&#9670;&#160;</a></span>xTraceStateGet</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define xTraceStateGet</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">puxState</td><td>)</td>
          <td>&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(*(puxState) = pxTraceRecorderData-&gt;uxTraceSystemStates[TRC_CFG_GET_CURRENT_CORE()], TRC_SUCCESS)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Query the trace state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">puiState</td><td>State</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5f268f164c766c85c14dc1de0bd92188" name="a5f268f164c766c85c14dc1de0bd92188"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f268f164c766c85c14dc1de0bd92188">&#9670;&#160;</a></span>xTraceStateSet</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define xTraceStateSet</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">uxState</td><td>)</td>
          <td>&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(pxTraceRecorderData-&gt;uxTraceSystemStates[TRC_CFG_GET_CURRENT_CORE()] = (uxState), TRC_SUCCESS)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the trace state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">uiState</td><td>State</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="af17eedfd433bb638557a4ac0c5d77499" name="af17eedfd433bb638557a4ac0c5d77499"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af17eedfd433bb638557a4ac0c5d77499">&#9670;&#160;</a></span>prvAddTaskToStackMonitor()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvAddTaskToStackMonitor </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>task</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds a task to the stack monitor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">task</td><td>The task </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae8ed2db2fbdca3b033e308cfbdcf6a4c" name="ae8ed2db2fbdca3b033e308cfbdcf6a4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8ed2db2fbdca3b033e308cfbdcf6a4c">&#9670;&#160;</a></span>prvMarkObjectAsUsed()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvMarkObjectAsUsed </td>
          <td>(</td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Mark object as used. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Object handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a689f9cad63fd3aebb3264b9b04793a3c" name="a689f9cad63fd3aebb3264b9b04793a3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a689f9cad63fd3aebb3264b9b04793a3c">&#9670;&#160;</a></span>prvRemoveTaskFromStackMonitor()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvRemoveTaskFromStackMonitor </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>task</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Remove a task from the stack monitor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">task</td><td>The task </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab8880560ab4d9c96029e2e824269afad" name="ab8880560ab4d9c96029e2e824269afad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8880560ab4d9c96029e2e824269afad">&#9670;&#160;</a></span>prvTraceError()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceError </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>msg</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Signals a trace error. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>Message </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a3b03d1095ea88af99c6e3d0e785834aa" name="a3b03d1095ea88af99c6e3d0e785834aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b03d1095ea88af99c6e3d0e785834aa">&#9670;&#160;</a></span>prvTraceFreeObjectHandle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceFreeObjectHandle </td>
          <td>(</td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Free an object handle. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a34a75e8fda85479d917a3038ab437813" name="a34a75e8fda85479d917a3038ab437813"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34a75e8fda85479d917a3038ab437813">&#9670;&#160;</a></span>prvTraceGetObjectHandle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceHandle prvTraceGetObjectHandle </td>
          <td>(</td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectclass</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reserve an object handle. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>traceHandle </dd></dl>

</div>
</div>
<a id="af01cd6e240a45aa251b1e344bb8bde1b" name="af01cd6e240a45aa251b1e344bb8bde1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af01cd6e240a45aa251b1e344bb8bde1b">&#9670;&#160;</a></span>prvTraceGetPriorityProperty()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t prvTraceGetPriorityProperty </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>objectclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>id</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get priority. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>Object handle</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>uint8_t Value </dd></dl>

</div>
</div>
<a id="aea1bcdac03786dae79fe2a2089088f8e" name="aea1bcdac03786dae79fe2a2089088f8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea1bcdac03786dae79fe2a2089088f8e">&#9670;&#160;</a></span>prvTracePortGetTimeStamp()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTracePortGetTimeStamp </td>
          <td>(</td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>puiTimestamp</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the current time based on the HWTC macros which provide a hardware isolation layer towards the hardware timer/counter. </p>
<p>The HWTC macros and prvTracePortGetTimeStamp is the main porting issue or the trace recorder library. Typically you should not need to change the code of prvTracePortGetTimeStamp if using the HWTC macros.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">puiTimestamp</td><td>Timestamp </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa011a8bb0aabcdf311f4ca0e4f106e2a" name="aa011a8bb0aabcdf311f4ca0e4f106e2a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa011a8bb0aabcdf311f4ca0e4f106e2a">&#9670;&#160;</a></span>prvTraceSetObjectName()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceSetObjectName </td>
          <td>(</td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the object name. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9aaff74096a29ec70283d99001afc11b" name="a9aaff74096a29ec70283d99001afc11b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9aaff74096a29ec70283d99001afc11b">&#9670;&#160;</a></span>prvTraceSetObjectState()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceSetObjectState </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>objectclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set object state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>Object handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a81554165bf93ae937cd351d805af2d23" name="a81554165bf93ae937cd351d805af2d23"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81554165bf93ae937cd351d805af2d23">&#9670;&#160;</a></span>prvTraceSetPriorityProperty()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceSetPriorityProperty </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>objectclass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set priority. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>Object handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac0e6e943899c820592887e23ec907f49" name="ac0e6e943899c820592887e23ec907f49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0e6e943899c820592887e23ec907f49">&#9670;&#160;</a></span>prvTraceSetReadyEventsEnabled()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceSetReadyEventsEnabled </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Dynamically enables ready events. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">flag</td><td>Flag </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0a99f73c4b615dd1b9f1176457969510" name="a0a99f73c4b615dd1b9f1176457969510"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a99f73c4b615dd1b9f1176457969510">&#9670;&#160;</a></span>prvTraceSetTaskInstanceFinished()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceSetTaskInstanceFinished </td>
          <td>(</td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Flags a task instance as finished. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Task handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa73a8410deee18065299362b64620d79" name="aa73a8410deee18065299362b64620d79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa73a8410deee18065299362b64620d79">&#9670;&#160;</a></span>prvTraceStoreKernelCall()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreKernelCall </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>eventcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectClass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>objectNumber</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores a Kernel Service call event with an Object handle parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">eventcode</td><td>Event code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">objectClass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">objectNumber</td><td>Object handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae63a278e4436542930f5a33898387209" name="ae63a278e4436542930f5a33898387209"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae63a278e4436542930f5a33898387209">&#9670;&#160;</a></span>prvTraceStoreKernelCallWithNumericParamOnly()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreKernelCallWithNumericParamOnly </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>evtcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>param</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores a Kernel Service call event with only a numeric parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">evtcode</td><td>Event code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">param</td><td>Parameter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afc81d827c015a145b13333933a31f7d6" name="afc81d827c015a145b13333933a31f7d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc81d827c015a145b13333933a31f7d6">&#9670;&#160;</a></span>prvTraceStoreKernelCallWithParam()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreKernelCallWithParam </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>evtcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectClass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>objectNumber</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>param</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores a Kernel Service call event with an Object handle and a numeric parameter. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">evtcode</td><td>Event code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">objectClass</td><td>Object class </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">objectNumber</td><td>Object handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">param</td><td>Parameter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aca15d85007f5a7172dba6ed8b61a6bda" name="aca15d85007f5a7172dba6ed8b61a6bda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca15d85007f5a7172dba6ed8b61a6bda">&#9670;&#160;</a></span>prvTraceStoreLowPower()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreLowPower </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>flag</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores a Low Power mode event. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">flag</td><td>Flag </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a53b3131f5fb7c6c23629d2d472d80655" name="a53b3131f5fb7c6c23629d2d472d80655"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a53b3131f5fb7c6c23629d2d472d80655">&#9670;&#160;</a></span>prvTraceStoreObjectNameOnCloseEvent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreObjectNameOnCloseEvent </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>evtcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectclass</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores the name of an object because it is being deleted. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">evtcode</td><td>Event code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Object handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab4e0c3e0a12b29cb6eb57a4a807864f4" name="ab4e0c3e0a12b29cb6eb57a4a807864f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4e0c3e0a12b29cb6eb57a4a807864f4">&#9670;&#160;</a></span>prvTraceStoreObjectPropertiesOnCloseEvent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreObjectPropertiesOnCloseEvent </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>evtcode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">traceObjectClass&#160;</td>
          <td class="paramname"><em>objectclass</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores the property of an object because it is being deleted. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">evtcode</td><td>Event code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Object handle </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">objectclass</td><td>Object class </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="abe8587ed483787a0c372b8bb17076f61" name="abe8587ed483787a0c372b8bb17076f61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe8587ed483787a0c372b8bb17076f61">&#9670;&#160;</a></span>prvTraceStoreTaskReady()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreTaskReady </td>
          <td>(</td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>handle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores a Task Ready event. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>Task handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa21cb18b5c3f0c46d33e43ef1425427b" name="aa21cb18b5c3f0c46d33e43ef1425427b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa21cb18b5c3f0c46d33e43ef1425427b">&#9670;&#160;</a></span>prvTraceStoreTaskswitch()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void prvTraceStoreTaskswitch </td>
          <td>(</td>
          <td class="paramtype">traceHandle&#160;</td>
          <td class="paramname"><em>task_handle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stores a Task Switch event. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">task_handle</td><td>Task </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a09709a126202d06f02c9bb390dde9530" name="a09709a126202d06f02c9bb390dde9530"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09709a126202d06f02c9bb390dde9530">&#9670;&#160;</a></span>uiTraceGetTraceBufferSize()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t uiTraceGetTraceBufferSize </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the size of the recorder data structure. For use together with xTraceGetTraceBuffer if you wish to implement an own store/upload solution, e.g., in case a debugger connection is not available for uploading the data. </p>
<dl class="section return"><dt>Returns</dt><dd>uint32_t Buffer size </dd></dl>

</div>
</div>
<a id="a438c3685b1e39f8c507982077e135fe0" name="a438c3685b1e39f8c507982077e135fe0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a438c3685b1e39f8c507982077e135fe0">&#9670;&#160;</a></span>vTraceClear()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vTraceClear </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Resets the recorder. </p>
<p>Only necessary if a restart is desired - this is not needed in the startup initialization.</p>
<dl class="section note"><dt>Note</dt><dd>Snapshot mode only! </dd></dl>

</div>
</div>
<a id="aff475da7b20b3621add3623b5e293575" name="aff475da7b20b3621add3623b5e293575"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff475da7b20b3621add3623b5e293575">&#9670;&#160;</a></span>vTraceSetFilterGroup()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vTraceSetFilterGroup </td>
          <td>(</td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>filterGroup</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>For snapshot mode only: Sets the "filter group" to assign when creating RTOS objects, such as tasks, queues, semaphores and mutexes. This together with vTraceSetFilterMask allows you to control what events that are recorded, based on the objects they refer to. </p>
<p>There are 16 filter groups named FilterGroup0 .. FilterGroup15.</p>
<p>Note: We don't recommend filtering out the Idle task, so make sure to call vTraceSetFilterGroup just before initializing the RTOS, in order to assign such "default" objects to the right Filter Group (typically group 0).</p>
<p>Example: </p><pre class="fragment">// Assign tasks T1 to FilterGroup0 (default)
&lt;Create Task T1&gt;  

// Assign Q1 and Q2 to FilterGroup1
vTraceSetFilterGroup(FilterGroup1);
&lt;Create Queue Q1&gt; 
&lt;Create Queue Q2&gt;

// Assigns Q3 to FilterGroup2
vTraceSetFilterGroup(FilterGroup2);
&lt;Create Queue Q3&gt;

// Only include FilterGroup0 and FilterGroup2, exclude FilterGroup1 (Q1 and Q2) from the trace
vTraceSetFilterMask( FilterGroup0 | FilterGroup2 );

// Assign the default RTOS objects (e.g. Idle task) to FilterGroup0
vTraceSetFilterGroup(FilterGroup0);
&lt;Start the RTOS scheduler&gt;
</pre><p> Note that you may define your own names for the filter groups using preprocessor definitions, to make the code easier to understand.</p>
<p>Example: </p><pre class="fragment">#define BASE FilterGroup0
#define USB_EVENTS FilterGroup1
#define CAN_EVENTS FilterGroup2
</pre><p> Note that filtering per event type (regardless of object) is also available in trcKernelPortConfig.h for certain kernels.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">filterGroup</td><td>Filter group </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5cb58f094eb23d0a9ef7984b498e7d9f" name="a5cb58f094eb23d0a9ef7984b498e7d9f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5cb58f094eb23d0a9ef7984b498e7d9f">&#9670;&#160;</a></span>vTraceSetFilterMask()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vTraceSetFilterMask </td>
          <td>(</td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>filterMask</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>For snapshot mode only: Sets the "filter mask" that is used to filter the events by object. This can be used to reduce the trace data rate, i.e., if your streaming interface is a bottleneck or if you want longer snapshot traces without increasing the buffer size. </p>
<p>Note: There are two kinds of filters in the recorder. The other filter type excludes all events of certain kinds (e.g., OS ticks). See trcConfig.h.</p>
<p>The filtering is based on bitwise AND with the Filter Group ID, assigned to RTOS objects such as tasks, queues, semaphores and mutexes. This together with vTraceSetFilterGroup allows you to control what events that are recorded, based on the objects they refer to.</p>
<p>See example for vTraceSetFilterGroup.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">filterMask</td><td>Filter mask </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac054fcab08015c8054fb23c5cdb584f0" name="ac054fcab08015c8054fb23c5cdb584f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac054fcab08015c8054fb23c5cdb584f0">&#9670;&#160;</a></span>vTraceSetStopHook()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vTraceSetStopHook </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="trcRecorder_8h.html#a80ef75431674bd23f75b4658f5ebce16">TRACE_STOP_HOOK</a>&#160;</td>
          <td class="paramname"><em>stopHookFunction</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets a function to be called when the recorder is stopped. </p>
<dl class="section note"><dt>Note</dt><dd>Snapshot mode only!</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">stopHookFunction</td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a62af22d9ff86d507040b538cf0c86c53" name="a62af22d9ff86d507040b538cf0c86c53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62af22d9ff86d507040b538cf0c86c53">&#9670;&#160;</a></span>xTraceDisable()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceDisable </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Disables tracing. </p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa2d68495afa8821369279f8b12250b48" name="aa2d68495afa8821369279f8b12250b48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2d68495afa8821369279f8b12250b48">&#9670;&#160;</a></span>xTraceGetEventBuffer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceGetEventBuffer </td>
          <td>(</td>
          <td class="paramtype">void **&#160;</td>
          <td class="paramname"><em>ppvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TraceUnsignedBaseType_t *&#160;</td>
          <td class="paramname"><em>puiSize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieve the event buffer and event buffer size. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">ppvBuffer</td><td>Pointer where event buffer pointer will be written </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">puiSize</td><td>Event buffer size</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a376825a7b6d85ac515de47b0dcdb0c40" name="a376825a7b6d85ac515de47b0dcdb0c40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a376825a7b6d85ac515de47b0dcdb0c40">&#9670;&#160;</a></span>xTraceGetTraceBuffer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void * xTraceGetTraceBuffer </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns a pointer to the recorder data structure. Use this together with uiTraceGetTraceBufferSize if you wish to implement an own store/upload solution, e.g., in case a debugger connection is not available for uploading the data. </p>
<dl class="section return"><dt>Returns</dt><dd>void* Buffer pointer </dd></dl>

</div>
</div>
<a id="a5313aac36d433a500e2036f3fea541aa" name="a5313aac36d433a500e2036f3fea541aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5313aac36d433a500e2036f3fea541aa">&#9670;&#160;</a></span>xTraceHeaderInitialize()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceHeaderInitialize </td>
          <td>(</td>
          <td class="paramtype">TraceHeaderBuffer_t *&#160;</td>
          <td class="paramname"><em>pxBuffer</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes the header data. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pxBuffer</td><td>Pointer to header buffer</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a55cefe256f7bfcfa9085667696a1752d" name="a55cefe256f7bfcfa9085667696a1752d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55cefe256f7bfcfa9085667696a1752d">&#9670;&#160;</a></span>xTraceInitialize()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceInitialize </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initializes the recorder data. <a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d" title="Initializes the recorder data. xTraceInitialize() or xTraceEnable(...) must be called before any atte...">xTraceInitialize()</a> or xTraceEnable(...) must be called before any attempts at adding trace data/information. <a class="el" href="trcRecorder_8h.html#a55cefe256f7bfcfa9085667696a1752d" title="Initializes the recorder data. xTraceInitialize() or xTraceEnable(...) must be called before any atte...">xTraceInitialize()</a> can be called before timestamp source is initialized since timestamps aren't used until xTraceEnable(...) is called. </p>
<p>See xTraceEnable(...) for more information.</p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a15ba5c0835d0f746e7a721b8acedab70" name="a15ba5c0835d0f746e7a721b8acedab70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15ba5c0835d0f746e7a721b8acedab70">&#9670;&#160;</a></span>xTraceISREnd()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceISREnd </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>pendingISR</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Registers the end of an Interrupt Service Routine. </p>
<p>The parameter pendingISR indicates if the interrupt has requested a task-switch (= 1), e.g., by signaling a semaphore. Otherwise (= 0) the interrupt is assumed to return to the previous context.</p>
<p>Example: #define PRIO_ISR_TIMER1 3 // the hardware priority of the interrupt ... TraceISRHandle_t Timer1Handle; xTraceISRRegister("ISRTimer1", PRIO_ISR_TIMER1, &amp;Timer1Handle); ... void ISR_handler() { xTraceISRBegin(Timer1Handle); ... xTraceISREnd(0); }</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pendingISR</td><td>Flag that indicates whether an ISR is pending</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afd44a44fe62cd56a66a998e87dae821b" name="afd44a44fe62cd56a66a998e87dae821b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd44a44fe62cd56a66a998e87dae821b">&#9670;&#160;</a></span>xTraceRegisterString()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TraceStringHandle_t xTraceRegisterString </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Registers a string and returns a handle that can be used when tracing. </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>Backwards compatibility</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>TraceStringHandle_t String handle </dd></dl>

</div>
</div>
<a id="adf9a9f603f0c43cb8793bfc4861fc2c3" name="adf9a9f603f0c43cb8793bfc4861fc2c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf9a9f603f0c43cb8793bfc4861fc2c3">&#9670;&#160;</a></span>xTraceSetBuffer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceSetBuffer </td>
          <td>(</td>
          <td class="paramtype">TraceRecorderData_t *&#160;</td>
          <td class="paramname"><em>pxBuffer</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the recorder data buffer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pxBuffer</td><td>Pointer to the recorder data buffer</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aaa9ee50f419cb5dda37c17dfa0144c3a" name="aaa9ee50f419cb5dda37c17dfa0144c3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa9ee50f419cb5dda37c17dfa0144c3a">&#9670;&#160;</a></span>xTraceStringRegister()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceStringRegister </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>label</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TraceStringHandle_t *&#160;</td>
          <td class="paramname"><em>pxString</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Registers a string and returns a handle that can be used when tracing. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">label</td><td>Label </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">pxString</td><td>String handle</td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a16c82bbd9f4fe8df1cd5c544f988e827" name="a16c82bbd9f4fe8df1cd5c544f988e827"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16c82bbd9f4fe8df1cd5c544f988e827">&#9670;&#160;</a></span>xTraceTaskInstanceFinishedNext()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceTaskInstanceFinishedNext </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Marks the current "task instance" as finished on the next kernel call. </p>
<p>If that kernel call is blocking, the instance ends after the blocking event and the corresponding return event is then the start of the next instance. If the kernel call is not blocking, the viewer instead splits the current fragment right before the kernel call, which makes this call the first event of the next instance.</p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a21379c3d2f31b2370bc19c5c2ddce32f" name="a21379c3d2f31b2370bc19c5c2ddce32f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21379c3d2f31b2370bc19c5c2ddce32f">&#9670;&#160;</a></span>xTraceTaskInstanceFinishedNow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceTaskInstanceFinishedNow </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates an event that ends the current task instance at this very instant. This makes the viewer to splits the current fragment at this point and begin a new actor instance, even if no task-switch has occurred. </p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a0dc702c30539813811556694b07c806c" name="a0dc702c30539813811556694b07c806c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0dc702c30539813811556694b07c806c">&#9670;&#160;</a></span>xTraceTzCtrl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">traceResult xTraceTzCtrl </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Call this function periodically. </p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">TRC_FAIL</td><td>Failure </td></tr>
    <tr><td class="paramname">TRC_SUCCESS</td><td>Success </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="trcRecorder_8h.html">trcRecorder.h</a></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6 </li>
  </ul>
</div>
</body>
</html>
